package com.yuxi.controller.manager;
import com.yuxi.common.SkJsonResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.springframework.web.bind.annotation.RestController;
import com.yuxi.pubInter.exception.SkException;
import com.yuxi.pubInter.IBaseService;
import com.yuxi.pubInter.RestfulController;
import com.yuxi.dto.BaseInfoDTO;
import com.yuxi.dto.BaseInfoPageDTO;
import com.yuxi.modelExt.BaseInfoExt;
import com.yuxi.searchExt.BaseInfoSearchExt;
import com.yuxi.service.IBaseInfoService;
import com.yuxi.vo.BaseInfoDetailVO;
import com.yuxi.vo.BaseInfoListVO;
import com.yuxi.vo.BaseInfoDomainVO;
import com.yuxi.vo.BaseInfoDetailDomainVO;

import org.springframework.validation.annotation.Validated;
import java.util.Set;
import java.util.HashSet;
import com.yuxi.pubInter.exception.BusinessException;

/**
*    @author sunke
*    @Date 2023-10-13 10:28:18
*    @description BaseInfoController      基础信息
*/
@Api(tags = "后台管理系统-基础信息相关", description = "基础信息相关接口")
@RestController(value ="baseInfoRestfulController")
@RequestMapping("/manager/baseInfo/")
@Validated
public class BaseInfoController extends ApiManageController<BaseInfoDTO,BaseInfoPageDTO,BaseInfoExt, BaseInfoSearchExt,BaseInfoDomainVO,BaseInfoDetailDomainVO,BaseInfoDetailVO,BaseInfoListVO,String> {

	@Resource(name = "baseInfoService")
	private IBaseInfoService baseInfoService;




	@Override
	public IBaseService<BaseInfoExt, BaseInfoSearchExt,String> getBaseService() throws SkException {
		return baseInfoService;
	}

	@Override
	public String getBaseRoute() {
		return "/manager/baseInfo/";
	}

	/**
	* 当前模板名称
	* @return
	*/
	@Override
	public String getModelName(){
		return "基础信息";
	}



	@Override
	public Set<String> totalMapSet() {
		Set totalMapSet=new HashSet();
		totalMapSet.add("count(base_info.bi_id) as countNum");
		return totalMapSet;
	}


}